package com.scott.itcast.thread.pool.p04.timer;

import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit;

/**
 * 用线程池启动定时器 
 * 6秒之后炸  以后每隔2秒炸
 * 
 */
public class ThreadPoolTest2 {

	public static void main(String[] args) {
		
		//只有1个任务 但是有3个线程 。所以是其中的1个线程去执行这个任务。
		//6秒之后炸  以后每隔2秒炸
		Executors.newScheduledThreadPool(3).scheduleAtFixedRate(new Runnable(){
			public void run() {
				System.out.println("线程["+Thread.currentThread().getName()+"]执行调度任务...");
			}
			
		}, 6,2, TimeUnit.SECONDS);
		
	}
}


/**
 某次的执行结果如下： 可以推断出 线程的下标从1开始
 
线程[pool-1-thread-1]执行调度任务...
线程[pool-1-thread-1]执行调度任务...
线程[pool-1-thread-2]执行调度任务...
线程[pool-1-thread-2]执行调度任务...
线程[pool-1-thread-3]执行调度任务...
线程[pool-1-thread-1]执行调度任务...
线程[pool-1-thread-1]执行调度任务...
线程[pool-1-thread-3]执行调度任务...
线程[pool-1-thread-3]执行调度任务...
线程[pool-1-thread-1]执行调度任务...
线程[pool-1-thread-1]执行调度任务...
线程[pool-1-thread-3]执行调度任务...
线程[pool-1-thread-3]执行调度任务...
线程[pool-1-thread-1]执行调度任务...
线程[pool-1-thread-1]执行调度任务...
线程[pool-1-thread-3]执行调度任务...
线程[pool-1-thread-3]执行调度任务...
线程[pool-1-thread-1]执行调度任务...
*/
